1. Field of the Invention
The present invention generally relates to computer systems. More particularly, the present invention relates to an operating system of managing data related to a graphic-user interface (GUI) and a peripheral device such as a printer associated with a computer.
2. Description of the Related Art
Most operating systems of computers generate a graphic-user interface (GUI) to a user that provides textual and graphical information with which a user of a computer can interact to perform various functions with the computer. Operating systems such as Windows® and the Apple Mac® O/S have a GUI that displays various virtual interactive controls, such as button, tabs, and bars that typically are interactive with the cursor of the mouse at the GUI. GUI enables a user to create, modify, and respond to graphical objects in real time. A user provides a command to the computer through the GUI by utilizing a pointing or locator device, such as a mouse, trackball, joystick, or stylus with tablet. These devices convert the physical movement of the user's hand into the movement of a cursor or an object on the computer display screen, which in turn can be converted into a computer command or a stream of data in digital form that can be utilized to perform various functions or predetermined actions with the computer.
To implement the GUI, the host operating system contains a GUI code directing the execution of the GUI. The host operating system also contains a data management code for supervising the location, storage, and retrieval of data (including input and output to various peripherals). The data management code manages, for example, the GUI data. Additionally, if the peripheral is a printer, the host operating system may contain a printer operating code or printer driver to operate the printer.
Currently, the printer operating code and the GUI code are intertwined in operating systems such as Windows® and the Apple Mac® O/S. Thus, if a modification is made to the GUI code to incorporate a new functionality, the printer operating code has to be rewritten or modified in response to the modification made to the GUI code. Likewise, if a modification is made to the printer operating code to incorporate a new functionality, the GUI code has to be rewritten or modified in response to the modification made to the printer operating code. This interdependency of the printer operating code and the GUI code not only limits the applicability and flexibility of the operating system, but also increases cost and labor for modifying the codes. Additionally, bugs in the printer operating code may affect the performance of the GUI code, and vice versa.
Therefore, there exists a need for a system of managing independently data related to a graphic-user interface (GUI) and data related to a peripheral device such as a printer associated with a computer.